package com.sky.vo;
/**
 * 1.当前模块名：sky-pojo
 *   模块作用：存放视图对象(Value Object)，用于Controller层返回给前端的结构化数据
 * 2.当前包名：com.sky.vo
 *   包作用：封装Controller层返回的视图数据模型（Value Object）
 * 3.当前类名：BusinessDataVO
 *   类作用：经营概览数据视图对象，用于首页展示关键业务指标
 */
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
/**
 * BusinessDataVO; 业务概览视图对象
 * 封装企业核心经营指标数据（营业额、订单、客户等）
 */
/**
 * 数据概览
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BusinessDataVO implements Serializable {
    /* 知识点: 序列化兼容 - 确保前后端数据传输格式兼容 */
    private Double turnover;//营业额


    private Integer validOrderCount;//有效订单数,金融精度字段 - 使用Double计算营业额（适用于精度要求不高的场景）

    private Double orderCompletionRate;//订单完成率,基础统计指标 - 有效订单数（订单状态=已完成）

    private Double unitPrice;//平均客单价,比率指标 - 完成率计算逻辑（完成订单/总订单）

    private Integer newUsers;//新增用户数,用户增长指标 - 新增注册用户数（统计周期内）

}
/**
 * 仿写：
 * OrderSalesVO; 订单销售统计视图
 * 封装不同订单状态的数量和占比数据
 * @Data
 * @Builder
 * @NoArgsConstructor
 * @AllArgsConstructor
 * public class OrderSalesVO implements Serializable {
 *  private static final long serialVersionUID = 1L;
 *  private Integer pendingPayment;
 *  private Double pendingPaymentRate;  // 待付款占比
 *  private Double deliveryGrowthRate;  // 配送订单环比增长率
 *  private Double completionRate;  // 订单完成率
 *  private String timeDimension;  // 时间维度标识
 *}
 */